package com.lion.ball.app.models.params.order;

/**
 * @author Chris Chan
 * Create on 2025-09-30 22:44
 * Use for: 商品 排序参数
 * Explain:
 * 
 */
public class TradeGoodsOrderParam {
    // ID
    private int id;
    // 商品编号
    private int code;
    // 商品标题
    private int title;
    // 商品分类ID
    private int cateCode;
    // 交易模式 0 定价 1 竞拍
    private int mode;
    // 价格或者竞拍底价
    private int price;
    // 用户账号
    private int accountCode;
    // 发布日期
    private int time;
    // 商品状态 0 新增 1 发布 2 交易 3 下架
    private int goodsStatus;

    // 无参构造方法
    public TradeGoodsOrderParam() {
    }

    // 全参数构造方法
    public TradeGoodsOrderParam(int id, int code, int title, int cateCode, int mode, int price, int accountCode, int time, int goodsStatus) {
        this.id = id;
        this.code = code;
        this.title = title;
        this.cateCode = cateCode;
        this.mode = mode;
        this.price = price;
        this.accountCode = accountCode;
        this.time = time;
        this.goodsStatus = goodsStatus;
    }

    // 全参数create生成器
    public static TradeGoodsOrderParam create(int id, int code, int title, int cateCode, int mode, int price, int accountCode, int time, int goodsStatus) {
        return new TradeGoodsOrderParam(id, code, title, cateCode, mode, price, accountCode, time, goodsStatus);
    }

    // 全参数of生成器
    public static TradeGoodsOrderParam of(int id, int code, int title, int cateCode, int mode, int price, int accountCode, int time, int goodsStatus) {
        return new TradeGoodsOrderParam(id, code, title, cateCode, mode, price, accountCode, time, goodsStatus);
    }
    // region Getter和Setter方法
    public int getId() {
        return id;
    }

    public TradeGoodsOrderParam setId(int id) {
        this.id = id;
        return this;
    }

    public int getCode() {
        return code;
    }

    public TradeGoodsOrderParam setCode(int code) {
        this.code = code;
        return this;
    }

    public int getTitle() {
        return title;
    }

    public TradeGoodsOrderParam setTitle(int title) {
        this.title = title;
        return this;
    }

    public int getCateCode() {
        return cateCode;
    }

    public TradeGoodsOrderParam setCateCode(int cateCode) {
        this.cateCode = cateCode;
        return this;
    }

    public int getMode() {
        return mode;
    }

    public TradeGoodsOrderParam setMode(int mode) {
        this.mode = mode;
        return this;
    }

    public int getPrice() {
        return price;
    }

    public TradeGoodsOrderParam setPrice(int price) {
        this.price = price;
        return this;
    }

    public int getAccountCode() {
        return accountCode;
    }

    public TradeGoodsOrderParam setAccountCode(int accountCode) {
        this.accountCode = accountCode;
        return this;
    }

    public int getTime() {
        return time;
    }

    public TradeGoodsOrderParam setTime(int time) {
        this.time = time;
        return this;
    }

    public int getGoodsStatus() {
        return goodsStatus;
    }

    public TradeGoodsOrderParam setGoodsStatus(int goodsStatus) {
        this.goodsStatus = goodsStatus;
        return this;
    }

    // endregion Getter和Setter方法
}
